﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	[DataContract]
	public enum ПорядокСписанияФактическихОтпусков
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
		[EnumMember(Value = "{\"Ссылка\":\"2dd8fea6-80dc-4bac-b2e2-31ebe687023f\", \"Представление\":\"КадровымиПриказами\"}")]
		КадровымиПриказами = 0,//Кадровыми приказами
		[EnumMember(Value = "{\"Ссылка\":\"bc89560f-2eff-4f57-8459-aa8ab5e35cf4\", \"Представление\":\"РасчетнымиДокументами\"}")]
		РасчетнымиДокументами = 1,//Расчетными документами
	}
	public static partial class ПорядокСписанияФактическихОтпусков_Значения//:ПеречислениеСсылка
	{
		public static readonly Guid КадровымиПриказами = new Guid("eb31e2b2-87e6-3f02-4bac-80dc2dd8fea6");//Кадровыми приказами
		public static readonly Guid РасчетнымиДокументами = new Guid("8aaa5984-e3b5-f45c-4f57-2effbc89560f");//Расчетными документами
		public static ПорядокСписанияФактическихОтпусков Получить(this ПорядокСписанияФактическихОтпусков Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static ПорядокСписанияФактическихОтпусков Получить(this ПорядокСписанияФактическихОтпусков Значение, Guid Ссылка)
		{
			if(Ссылка == КадровымиПриказами)
			{
				return ПорядокСписанияФактическихОтпусков.КадровымиПриказами;
			}
			else if(Ссылка == РасчетнымиДокументами)
			{
				return ПорядокСписанияФактическихОтпусков.РасчетнымиДокументами;
			}
			return ПорядокСписанияФактическихОтпусков.ПустаяСсылка;
		}
		public static byte[] Ключ(this ПорядокСписанияФактическихОтпусков Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this ПорядокСписанияФактическихОтпусков Значение)
		{
			switch (Значение)
			{
				case ПорядокСписанияФактическихОтпусков.КадровымиПриказами: return КадровымиПриказами;
				case ПорядокСписанияФактическихОтпусков.РасчетнымиДокументами: return РасчетнымиДокументами;
			}
			return Guid.Empty;
		}
	}
}